【レポート】今から始める!AWSにおけるクラウドのシステム運用入門2020年版 #AWSSummit
こんにちは〜オンジーです〜
AWS Summit Online 始まりましたね!!祭りだワッショイ!!
ということで「今から始める!AWSにおけるクラウドのシステム運用入門2020年版」に参加しましたのでそのレポートです。
動画と資料
セッションの概要
タイトル:今から始める!AWSにおけるクラウドのシステム運用入門2020年版
スピーカー:AWSJ 矢ヶ崎哲宏さん
- 対象
- オンプレミスの運用経験がありクラウドでのシステム運用を検討している人
- またはアプリケーション開発をしている人でも運用寄りの知識を知っておきたい人
- ねらい
- オンプレミスのシステム運用とどのように運用の概念が変わるか、またシステム運用に用いるAWSサービスの全体像を知ることで実際のシステム運用に向けた準備や調査ができるようになること
なぜクラウドを利用するのか?
- クラウドに移行するためのビジネス推進要因には様々ある
- デジタルトランスフォーメーション
- セキュリティ強化と運用の回復力
- IoTとAI/ML
- etc...
- その中でも運用と関連が深い「俊敏性とスタッフの生産性」と「コスト削減」にフォーカスしてみる
- クラウド活用への2つのアプローチ
- クラウドネイティブ
- 元々クラウドに合うようにゼロから作っていく
- リフト&シフト
- オンプレで稼働している資産をクラウドに移行して活用する
- 移行した上でクラウド最適化を目指す
- クラウドネイティブ
- クラウド移行で得られるメリット
-
- ただしオンプレミスの時と同じ設計・運用では効果は半減してしまう
- クラウド移行の流れ
-
- 画像のような流れで進めるが移行した後の「運用の見直し」と「モダナイズ」がクラウド最適化において重要
- どう実現するか?
- 実践(Practice)
- ツール(Tools)
クラウドでのシステム運用のプラクティス
※以下、AWS Well-Architected Frameworkを「W-A」と略します。
- W-Aで実践
- 次のような課題にW-Aを参考にすると良い
- リフト&シフトでクラウドにあった運用ができるだろうか?
- オンプレミスの経験は豊富だがクラウド最適化のための設計・運用のノウハウがない。。。
- 次のような課題にW-Aを参考にすると良い
- W-Aとは?
-
- システム設計・運用の”大局的な"考え方とベストプラクティス集
- 常に進化し続けている
- 2020年の7月にもW-Aのアップデートがあったばかりですね!
- W-Aホワイトペーパー(2020年7⽉版)
- 五つの柱で構成されている
- W-A活用する上での注意点としてあくまでも設計"原則"なので実装の詳細やアーキテクチャパターンは扱ってないことは覚えておきましょう
- W-A 一般の設計原則
- 運用のための設計がとても重要
- 必要キャパシティーの推測が不要に
- クラウドのインフラストラクチャは破棄できるので実際に使ってみて計測することができる
- 本稼働スケールでシステムをテストする
- 本番環境と同じ大きさのインフラストラクチャを用意してテストできる、終わったら破棄すれば良い
- 自動化によってアーキテクチャでの実験を用意にする
- コードで管理することで同じような環境ではなく全く同じ環境を作ることが可能になる
- 発展するアーキテクチャが可能に
- 古いインフラストラクチャを破棄して新しいインフラストラクチャを使える、つまり入れ替えができるのでテンポよく進化が可能
- データに基づいてアーキテクチャを進化させる
- メトリクスやデータに基づいて新しいアーキテクチャを導入して古いものは破棄することができる
- ゲームデーを利用して改善する
- 本番稼働をシュミレートすることで想定外の対応をすることに備える
- 運用の優秀性の柱
- 五つの柱の一つ
- ビジネス価値を生み出すシステムを実行およびモニタリングして、サポートのプロセスと手順を継続的に向上する能力
- 準備、運用、進化という3つの分野に沿ってベストプラクティスを確認する質問が用意されている
- まとめ
- W-Aの一般の設計原則と五つの柱を確認しながら改善点を探すことでクラウド最適化を進めることができる!
システム運用のプラクティスに沿ったAWSサービス活用例
W-Aのベストプラクティスに沿って具体的にどのようなAWSサービスを活用していくか見ていきましょう。
- 運用の優秀性の柱 OPS3
- 「どのようにして欠点を減らし、修正を簡単にし、本番環境へのフローを改善しますか?」
- コードで管理することにより、テスト・デバッグ・再現ができる
- フィードバック、バグ修正を可能にする
- AWS CloudFormation によるInfrastructure as Code
- インフラストラクチャをコード化してプロビジョニングできるサービス
- 作成済みリソースからのインポート、リファクタも可能
- Amazon EC2 Image Builder によるAMIのコードによる作成
- EC2のマシンイメージ(AMI)を最新に保つことを容易にするサービス
- コードで管理することにより、テスト・デバッグ・再現ができる
- 「どのようにして欠点を減らし、修正を簡単にし、本番環境へのフローを改善しますか?」
- 運用の優秀性の柱 OPS6
- 「ワークロードの正常性をどのように把握しますか?」
- 可視性を高めることがポイントになる
- どういう状態が異常でユーザエクスペリエンスにどう影響するのかの定義に沿って監視・分析をする
- AWS Systems Manager Explorer で現状を視覚的に把握
- EC2インスタンスの状態やパッチの適用状況などを一元的に把握するためのダッシュボード
- Amazon CloudWatch を利用したワークロードの監視、分析
- AWSにおけるモニタリングツール群(画像参照)
- 「ワークロードの正常性をどのように把握しますか?」
- 責任共有モデル
-
- 運用の面に関しても責任共有モデルは大事
- 「お客様」責任範囲
- AWSが提供する監視・運用をサポートするツールを活用してセキュリティを守っていこう
- 「AWS」責任範囲
- ソフトウェア以下の監視・運用はAWSが実施しておりセキュリティを守っている
- 「お客様」責任範囲
- 運用の面に関しても責任共有モデルは大事
- マネージドサービスという選択
- 以下を比較してみる
- Amazon EC2にDBMSをインストール
- Amazon RDSを使用(マネージドサービス)
- 以下を比較してみる
-
- マネージドサービスの方がAWSに運用をオフロードできる範囲が大きい
- 運用負荷を下げることができる
- AWSが管理しているレイヤーについては障害監視はせずにAWSサポートを活用する
- マネージドサービスの方がAWSに運用をオフロードできる範囲が大きい
- CloudWatch Synthetics
- ユーザエクスペリエンスへの影響を直接監視できる重要な機能
- トラフィックを流してレスポンスを確認できる
- ヘッドレスブラウザを使ったスクリプト実装可能
- ユーザの操作をシュミレートするような監視ができる
- ユーザエクスペリエンスへの影響を直接監視できる重要な機能
- 運用の優秀性の柱 OPS9
- 「オペレーションを進化させる方法」
- 継続的改善のプロセスを意識し、新しい情報のキャッチアップとPoCのためにリソースを費やす
- 良いものを取り入れて進化させていくことが大事
- AWS Management and Governance services
-
- AWS Systems Manager
- クラウド運用を最適化するためのツール群
- Operation at Scale という考え方
- 1台,2台の管理は自力でもなんとかなるかもしれないが1000台,2000台となるとそうもいかないのでツールをうまく使う必要がある
- 例えばRun Commandで複数インスタンスを一気に操作するなど
- 1台,2台の管理は自力でもなんとかなるかもしれないが1000台,2000台となるとそうもいかないのでツールをうまく使う必要がある
- AWS Systems Manager
- クラウドでは運用がビジネスへのインパクトに
- 俊敏性を得て、カスタマーエクスペリエンスの改善サイクルを素早く回す
- 生産性向上により、より一層お客様への価値をお届けする時間の確保
- インフラ・運用コストを削減し、プロダクトの価値向上への再投資が可能
- 運用の最適化によるビジネスへの寄与が大切
まとめ
クラウド活用のメリットを活かすために、クラウドに適した運用を行い、ビジネスを加速していきましょう。
所感
セッションを見終えて最初に思ったのは「クラウドの運用ってチャレンジングで面白い!」です。
日々進化していくツールやサービスをキャッチアップしながら、コストを削減したり、俊敏性を上げたりすることでビジネスへのインパクトを与えられると思うとワクワクしてきますよね。
知らなかったツールの活用についてもイメージが掴めたセッションでしたので今度は自分の手で動かしてみてさらに理解を深めていきたいと思います!!